﻿using System;
using System.Collections.Generic;
using System.Text;
using BussinessLogicTecnoPez;

namespace BussinessLogicTecnoPez.Seguridad_Tecnopez
{
    [Serializable]
    [DBTable("FUNCIONESTECNOPEZ")]
    public class FuncionTecnopez : EntityBase<FuncionTecnopez>
    {
        private int idFuncionTecnopez;
        private string nombre;
        private string imageUrl;
        private string url;
        private string descripcion;
        private FuncionTecnopez objFuncionPadre;

        [FriendlyName("Código",true)]
        [DBField("IDFUNCIONTECNOPEZ", true, true)]
        public int IdFuncionTecnopez
        {
            get { return this.idFuncionTecnopez; }
            set { this.idFuncionTecnopez=value; }
        }

        [FriendlyName("Nombre",true,true, FriendlyName.FilterType.String)]
        [DBField("NOMBRE", false, false)]
        public string Nombre
        {
            get { return this.nombre; }
            set { this.nombre = value; }
        }

        [FriendlyName("Imagen",false)]
        [DBField("IMAGEURL", false, false)]
        public string ImageUrl
        {
            get { return this.imageUrl; }
            set { this.imageUrl = value; }
        }

        [FriendlyName("URL",false)]
        [DBField("URL", false, false)]
        public string URL
        {
            get { return this.url; }
            set { this.url = value; }
        }

        [FriendlyName("Descripción",true)]
        [DBField("DESCRIPCION", false, false)]
        public string Descripcion
        {
            get { return this.descripcion; }
            set { this.descripcion = value; }
        }

        [FriendlyName("Padre",true)]
        [DBField("IDFUNCIONPADRE", false, false, true, "IDFUNCIONTECNOPEZ")]
        public FuncionTecnopez FuncionPadre
        {
            get { return this.objFuncionPadre; }
            set { this.objFuncionPadre = value; }
        }

        public override string ToString()
        {
            return this.Nombre;
        }
    }
}
